<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.3"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FabGL: canvas.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">FabGL
   </div>
   <div id="projectbrief">ESP32 Display Controller and Graphics Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.3 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('canvas_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle"><div class="title">canvas.h</div></div>
</div><!--header-->
<div class="contents">
<a href="canvas_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="comment">  Created by Fabrizio Di Vittorio (fdivitto2013@gmail.com) - &lt;http://www.fabgl.com&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="comment">  Copyright (c) 2019-2022 Fabrizio Di Vittorio.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="comment">  All rights reserved.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="comment"></span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="comment"></span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="comment">* Please contact fdivitto2013@gmail.com if you need a commercial license.</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="comment"></span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="comment"></span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="comment">* This library and related software is available under GPL v3.</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="comment"></span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="comment">  FabGL is free software: you can redistribute it and/or modify</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="comment">  it under the terms of the GNU General Public License as published by</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="comment">  the Free Software Foundation, either version 3 of the License, or</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="comment">  (at your option) any later version.</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="comment"></span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="comment">  FabGL is distributed in the hope that it will be useful,</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span><span class="comment">  but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span><span class="comment">  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="comment">  GNU General Public License for more details.</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="comment"></span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="comment">  You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span><span class="comment">  along with FabGL.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="comment"> */</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span> </div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span><span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span><span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span><span class="preprocessor">#include &quot;<a class="code" href="displaycontroller_8h.html">displaycontroller.h</a>&quot;</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span><span class="keyword">namespace </span>fabgl {</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="classfabgl_1_1_canvas.html">   70</a></span><span class="keyword">class </span><a class="code hl_class" href="classfabgl_1_1_canvas.html">Canvas</a> {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>  <a class="code hl_class" href="classfabgl_1_1_canvas.html">Canvas</a>(<a class="code hl_class" href="classfabgl_1_1_bitmapped_display_controller.html">BitmappedDisplayController</a> * displayController);</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="classfabgl_1_1_canvas_a67a0997183f24da19b776d96c1052998.html#a67a0997183f24da19b776d96c1052998">   83</a></span>  <span class="keywordtype">int</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a67a0997183f24da19b776d96c1052998.html#a67a0997183f24da19b776d96c1052998">getWidth</a>() { <span class="keywordflow">return</span> m_displayController-&gt;<a class="code hl_function" href="classfabgl_1_1_base_display_controller_a69dd55b31e9c284aeec6f2b91a8da525.html#a69dd55b31e9c284aeec6f2b91a8da525">getViewPortWidth</a>(); }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="classfabgl_1_1_canvas_a07efb2a4e9a982688c8bb3c3f21d1092.html#a07efb2a4e9a982688c8bb3c3f21d1092">   92</a></span>  <span class="keywordtype">int</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a07efb2a4e9a982688c8bb3c3f21d1092.html#a07efb2a4e9a982688c8bb3c3f21d1092">getHeight</a>() { <span class="keywordflow">return</span> m_displayController-&gt;<a class="code hl_function" href="classfabgl_1_1_base_display_controller_a5308b6853d3778845649f08832e96535.html#a5308b6853d3778845649f08832e96535">getViewPortHeight</a>(); }</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a0b366edca7302c95aa628529545453ea.html#a0b366edca7302c95aa628529545453ea">waitCompletion</a>(<span class="keywordtype">bool</span> waitVSync = <span class="keyword">true</span>);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_afb0580e2870f3afd9ae1b1300b1c8e9a.html#afb0580e2870f3afd9ae1b1300b1c8e9a">beginUpdate</a>();</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ae75638d96ce77bea32eb76333b76cbc5.html#ae75638d96ce77bea32eb76333b76cbc5">endUpdate</a>();</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a31a9db7752f187501af260615027c5bd.html#a31a9db7752f187501af260615027c5bd">swapBuffers</a>();</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3ec8e84f102c8ca95207a531d803b945.html#a3ec8e84f102c8ca95207a531d803b945">setOrigin</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span> </div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3ec8e84f102c8ca95207a531d803b945.html#a3ec8e84f102c8ca95207a531d803b945">setOrigin</a>(<a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a> <span class="keyword">const</span> &amp; origin);</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span> </div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"><a class="line" href="classfabgl_1_1_canvas_a96a5b38870af14b17892861338f5d069.html#a96a5b38870af14b17892861338f5d069">  146</a></span>  <a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a> <a class="code hl_function" href="classfabgl_1_1_canvas_a96a5b38870af14b17892861338f5d069.html#a96a5b38870af14b17892861338f5d069">getOrigin</a>() { <span class="keywordflow">return</span> m_origin; }</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a4163959b5395aa1394961e619bea51e4.html#a4163959b5395aa1394961e619bea51e4">setClippingRect</a>(<a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a> <span class="keyword">const</span> &amp; rect);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span> </div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>  <a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a> <a class="code hl_function" href="classfabgl_1_1_canvas_a5b076ed14a6564a14dbd347cfce3a4e7.html#a5b076ed14a6564a14dbd347cfce3a4e7">getClippingRect</a>();</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span> </div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ac8bb3912a3ce86b15842e79d0b421204.html#ac8bb3912a3ce86b15842e79d0b421204">clear</a>();</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span> </div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ad20897c5c8bd47f5d4005989bead0e55.html#ad20897c5c8bd47f5d4005989bead0e55">reset</a>();</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span> </div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno">  185</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a0c8606755ffb5321f7bfc7e5867d605f.html#a0c8606755ffb5321f7bfc7e5867d605f">setScrollingRegion</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno">  186</span> </div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_adf5beb564841faac78a85c72ba79d845.html#adf5beb564841faac78a85c72ba79d845">scroll</a>(<span class="keywordtype">int</span> offsetX, <span class="keywordtype">int</span> offsetY);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span> </div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ade8b482e1c154cafa15e6cce34cf4bd7.html#ade8b482e1c154cafa15e6cce34cf4bd7">moveTo</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>);</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span> </div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ac130486f79bd6cefa1bd8f33c5e5cbed.html#ac130486f79bd6cefa1bd8f33c5e5cbed">setPenColor</a>(uint8_t red, uint8_t green, uint8_t blue);</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ac130486f79bd6cefa1bd8f33c5e5cbed.html#ac130486f79bd6cefa1bd8f33c5e5cbed">setPenColor</a>(<a class="code hl_enumeration" href="group___enumerations_gab87bacfdad76e61b9412d7124be44c1c.html#gab87bacfdad76e61b9412d7124be44c1c">Color</a> color);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span> </div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ac130486f79bd6cefa1bd8f33c5e5cbed.html#ac130486f79bd6cefa1bd8f33c5e5cbed">setPenColor</a>(<a class="code hl_struct" href="structfabgl_1_1_r_g_b888.html">RGB888</a> <span class="keyword">const</span> &amp; color);</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span> </div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno">  269</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a833ec1b3a2cf47aa9fbf862b2136f2a2.html#a833ec1b3a2cf47aa9fbf862b2136f2a2">setBrushColor</a>(uint8_t red, uint8_t green, uint8_t blue);</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span> </div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a833ec1b3a2cf47aa9fbf862b2136f2a2.html#a833ec1b3a2cf47aa9fbf862b2136f2a2">setBrushColor</a>(<a class="code hl_enumeration" href="group___enumerations_gab87bacfdad76e61b9412d7124be44c1c.html#gab87bacfdad76e61b9412d7124be44c1c">Color</a> color);</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno">  282</span> </div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno">  293</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a833ec1b3a2cf47aa9fbf862b2136f2a2.html#a833ec1b3a2cf47aa9fbf862b2136f2a2">setBrushColor</a>(<a class="code hl_struct" href="structfabgl_1_1_r_g_b888.html">RGB888</a> <span class="keyword">const</span> &amp; color);</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno">  294</span> </div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a43079b89e73581496cdf7623d1fb48c2.html#a43079b89e73581496cdf7623d1fb48c2">setPenWidth</a>(<span class="keywordtype">int</span> value);</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span> </div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno">  318</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_af9e6a083d810f5ac805cd6ae8e077756.html#af9e6a083d810f5ac805cd6ae8e077756">setLineEnds</a>(<a class="code hl_enumeration" href="group___enumerations_ga8ac9813c9c9df8a1e7f6ec66b346f08e.html#ga8ac9813c9c9df8a1e7f6ec66b346f08e">LineEnds</a> value);</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno">  319</span> </div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno">  326</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3192f783a37fbc936429e81e829ac61e.html#a3192f783a37fbc936429e81e829ac61e">setPixel</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>);</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno">  327</span> </div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno">  335</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3192f783a37fbc936429e81e829ac61e.html#a3192f783a37fbc936429e81e829ac61e">setPixel</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <a class="code hl_struct" href="structfabgl_1_1_r_g_b888.html">RGB888</a> <span class="keyword">const</span> &amp; color);</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno">  336</span> </div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno">  343</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3192f783a37fbc936429e81e829ac61e.html#a3192f783a37fbc936429e81e829ac61e">setPixel</a>(<a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a> <span class="keyword">const</span> &amp; pos, <a class="code hl_struct" href="structfabgl_1_1_r_g_b888.html">RGB888</a> <span class="keyword">const</span> &amp; color);</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno">  344</span> </div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno">  363</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_adda0fd465e10de29bbb2a9268999b75c.html#adda0fd465e10de29bbb2a9268999b75c">lineTo</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>);</div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno">  364</span> </div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno">  382</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ab2ef33259e2223e00963fa402c02b064.html#ab2ef33259e2223e00963fa402c02b064">drawLine</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno">  383</span> </div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno">  398</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a51745433bb792141ee5e66e9ff5a87e9.html#a51745433bb792141ee5e66e9ff5a87e9">drawRectangle</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno">  399</span> </div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno">  405</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a51745433bb792141ee5e66e9ff5a87e9.html#a51745433bb792141ee5e66e9ff5a87e9">drawRectangle</a>(<a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a> <span class="keyword">const</span> &amp; rect);</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno">  406</span> </div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno">  427</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a02a657b4391aa25216ff993a0569a3c5.html#a02a657b4391aa25216ff993a0569a3c5">fillRectangle</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno">  428</span> </div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno">  440</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a02a657b4391aa25216ff993a0569a3c5.html#a02a657b4391aa25216ff993a0569a3c5">fillRectangle</a>(<a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a> <span class="keyword">const</span> &amp; rect);</div>
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno">  441</span> </div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno">  452</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_aa3c3450751dc207a03b0f7f7704964ce.html#aa3c3450751dc207a03b0f7f7704964ce">invertRectangle</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno">  453</span> </div>
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno">  461</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_aa3c3450751dc207a03b0f7f7704964ce.html#aa3c3450751dc207a03b0f7f7704964ce">invertRectangle</a>(<a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a> <span class="keyword">const</span> &amp; rect);</div>
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno">  462</span> </div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno">  471</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a213a1f95153dba2e00962ff0ca27aaf3.html#a213a1f95153dba2e00962ff0ca27aaf3">swapRectangle</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a>);</div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno">  472</span> </div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno">  487</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a37ccab1d5906bc2facb56457e89ee0bc.html#a37ccab1d5906bc2facb56457e89ee0bc">drawEllipse</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4.html#a2474a5474cbff19523a51eb1de01cda4">width</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534.html#ad12fc34ce789bce6c8a05d8a17138534">height</a>);</div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno">  488</span> </div>
<div class="line"><a id="l00509" name="l00509"></a><span class="lineno">  509</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a8180e12aa8ac1265fa642959d1e4ffd2.html#a8180e12aa8ac1265fa642959d1e4ffd2">fillEllipse</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4.html#a2474a5474cbff19523a51eb1de01cda4">width</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534.html#ad12fc34ce789bce6c8a05d8a17138534">height</a>);</div>
<div class="line"><a id="l00510" name="l00510"></a><span class="lineno">  510</span> </div>
<div class="line"><a id="l00541" name="l00541"></a><span class="lineno">  541</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a52cf5628da66f95d0ef2448bdfedf259.html#a52cf5628da66f95d0ef2448bdfedf259">drawGlyph</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4.html#a2474a5474cbff19523a51eb1de01cda4">width</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534.html#ad12fc34ce789bce6c8a05d8a17138534">height</a>, uint8_t <span class="keyword">const</span> * <a class="code hl_variable" href="displaycontroller_8h_a96db82e580e46e24e2b39dd6c5bf7c21.html#a96db82e580e46e24e2b39dd6c5bf7c21">data</a>, <span class="keywordtype">int</span> index = 0);</div>
<div class="line"><a id="l00542" name="l00542"></a><span class="lineno">  542</span> </div>
<div class="line"><a id="l00559" name="l00559"></a><span class="lineno">  559</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_adfb8897a6be8008318aa02ab10f407f5.html#adfb8897a6be8008318aa02ab10f407f5">setGlyphOptions</a>(<a class="code hl_union" href="unionfabgl_1_1_glyph_options.html">GlyphOptions</a> options);</div>
<div class="line"><a id="l00560" name="l00560"></a><span class="lineno">  560</span> </div>
<div class="line"><a id="l00564" name="l00564"></a><span class="lineno">  564</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ad20d1b20527338e032925d68bda2d517.html#ad20d1b20527338e032925d68bda2d517">resetGlyphOptions</a>();</div>
<div class="line"><a id="l00565" name="l00565"></a><span class="lineno">  565</span> </div>
<div class="line"><a id="l00566" name="l00566"></a><span class="lineno">  566</span>  <span class="keywordtype">void</span> renderGlyphsBuffer(<span class="keywordtype">int</span> itemX, <span class="keywordtype">int</span> itemY, GlyphsBuffer <span class="keyword">const</span> * glyphsBuffer);</div>
<div class="line"><a id="l00567" name="l00567"></a><span class="lineno">  567</span> </div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno">  571</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3baa6299618be4d828b473893b50a9f1.html#a3baa6299618be4d828b473893b50a9f1">setPaintOptions</a>(<a class="code hl_struct" href="structfabgl_1_1_paint_options.html">PaintOptions</a> options);</div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno">  572</span> </div>
<div class="line"><a id="l00576" name="l00576"></a><span class="lineno">  576</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_acabff55d9d5166f90791a200ca929a1c.html#acabff55d9d5166f90791a200ca929a1c">resetPaintOptions</a>();</div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno">  577</span> </div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"><a class="line" href="classfabgl_1_1_canvas_ad3509f1cdf9c5ad19bcea7d66d1f0ad8.html#ad3509f1cdf9c5ad19bcea7d66d1f0ad8">  583</a></span>  FontInfo <span class="keyword">const</span> * <a class="code hl_function" href="classfabgl_1_1_canvas_ad3509f1cdf9c5ad19bcea7d66d1f0ad8.html#ad3509f1cdf9c5ad19bcea7d66d1f0ad8">getFontInfo</a>() { <span class="keywordflow">return</span> m_fontInfo; }</div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno">  584</span> </div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno">  598</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_aed37132c2af1db5b21e26ed664d0c758.html#aed37132c2af1db5b21e26ed664d0c758">selectFont</a>(FontInfo <span class="keyword">const</span> * fontInfo);</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno">  599</span> </div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno">  614</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ace0e4720eb75f05b029c455982653ed2.html#ace0e4720eb75f05b029c455982653ed2">drawChar</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">char</span> c);</div>
<div class="line"><a id="l00615" name="l00615"></a><span class="lineno">  615</span> </div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno">  631</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ad38389073d9198667e74e79bb7f6dba3.html#ad38389073d9198667e74e79bb7f6dba3">drawText</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">char</span> <span class="keyword">const</span> * text, <span class="keywordtype">bool</span> wrap = <span class="keyword">false</span>);</div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno">  632</span> </div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno">  649</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_ad38389073d9198667e74e79bb7f6dba3.html#ad38389073d9198667e74e79bb7f6dba3">drawText</a>(FontInfo <span class="keyword">const</span> * fontInfo, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">char</span> <span class="keyword">const</span> * text, <span class="keywordtype">bool</span> wrap = <span class="keyword">false</span>);</div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno">  650</span> </div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno">  660</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a160b74fb568b7c9ee88db25098f7442d.html#a160b74fb568b7c9ee88db25098f7442d">drawTextWithEllipsis</a>(FontInfo <span class="keyword">const</span> * fontInfo, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keywordtype">char</span> <span class="keyword">const</span> * text, <span class="keywordtype">int</span> maxX);</div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno">  661</span> </div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno">  668</span>  <span class="keywordtype">int</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a982dd49e90e0e7ac03bc9358d0ebf589.html#a982dd49e90e0e7ac03bc9358d0ebf589">textExtent</a>(FontInfo <span class="keyword">const</span> * fontInfo, <span class="keywordtype">char</span> <span class="keyword">const</span> * text);</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno">  669</span> </div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno">  675</span>  <span class="keywordtype">int</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a982dd49e90e0e7ac03bc9358d0ebf589.html#a982dd49e90e0e7ac03bc9358d0ebf589">textExtent</a>(<span class="keywordtype">char</span> <span class="keyword">const</span> * text);</div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno">  676</span> </div>
<div class="line"><a id="l00690" name="l00690"></a><span class="lineno">  690</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_adac3e826c16a5abcc9a878b89afb8d86.html#adac3e826c16a5abcc9a878b89afb8d86">drawTextFmt</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *format, ...);</div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno">  691</span> </div>
<div class="line"><a id="l00704" name="l00704"></a><span class="lineno">  704</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a2feb78875ca185cbdfd65987f380ef15.html#a2feb78875ca185cbdfd65987f380ef15">copyRect</a>(<span class="keywordtype">int</span> sourceX, <span class="keywordtype">int</span> sourceY, <span class="keywordtype">int</span> destX, <span class="keywordtype">int</span> destY, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4.html#a2474a5474cbff19523a51eb1de01cda4">width</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534.html#ad12fc34ce789bce6c8a05d8a17138534">height</a>);</div>
<div class="line"><a id="l00705" name="l00705"></a><span class="lineno">  705</span> </div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno">  717</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a3447e9b59b69ead99cf3735e1bd18c02.html#a3447e9b59b69ead99cf3735e1bd18c02">drawBitmap</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>, <a class="code hl_struct" href="structfabgl_1_1_bitmap.html">Bitmap</a> <span class="keyword">const</span> * bitmap);</div>
<div class="line"><a id="l00718" name="l00718"></a><span class="lineno">  718</span> </div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno">  731</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_a7a927cc681ff0c452115e08196dd17c5.html#a7a927cc681ff0c452115e08196dd17c5">drawPath</a>(<a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a> <span class="keyword">const</span> * points, <span class="keywordtype">int</span> pointsCount);</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno">  732</span> </div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno">  745</span>  <span class="keywordtype">void</span> <a class="code hl_function" href="classfabgl_1_1_canvas_af4ac807c623677aa49e67f413e1e6e23.html#af4ac807c623677aa49e67f413e1e6e23">fillPath</a>(<a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a> <span class="keyword">const</span> * points, <span class="keywordtype">int</span> pointsCount);</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno">  746</span> </div>
<div class="line"><a id="l00758" name="l00758"></a><span class="lineno">  758</span>  <a class="code hl_struct" href="structfabgl_1_1_r_g_b888.html">RGB888</a> <a class="code hl_function" href="classfabgl_1_1_canvas_aa74ddfd1e6c73270086397d907057be3.html#aa74ddfd1e6c73270086397d907057be3">getPixel</a>(<span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a>, <span class="keywordtype">int</span> <a class="code hl_variable" href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a>);</div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno">  759</span> </div>
<div class="line"><a id="l00760" name="l00760"></a><span class="lineno">  760</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00761" name="l00761"></a><span class="lineno">  761</span> </div>
<div class="line"><a id="l00762" name="l00762"></a><span class="lineno">  762</span>  <a class="code hl_class" href="classfabgl_1_1_bitmapped_display_controller.html">BitmappedDisplayController</a> * m_displayController;</div>
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno">  763</span> </div>
<div class="line"><a id="l00764" name="l00764"></a><span class="lineno">  764</span>  FontInfo <span class="keyword">const</span> *    m_fontInfo;</div>
<div class="line"><a id="l00765" name="l00765"></a><span class="lineno">  765</span>  uint8_t             m_textHorizRate; <span class="comment">// specify character size: 1 = m_fontInfo.width, 2 = m_fontInfo.width * 2, etc...</span></div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno">  766</span> </div>
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno">  767</span>  <a class="code hl_struct" href="structfabgl_1_1_point.html">Point</a>               m_origin;</div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno">  768</span>  <a class="code hl_struct" href="structfabgl_1_1_rect.html">Rect</a>                m_clippingRect;</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno">  769</span>};</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno">  770</span> </div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno">  771</span> </div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno">  772</span>} <span class="comment">// end of namespace</span></div>
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno">  773</span> </div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno">  774</span> </div>
<div class="line"><a id="l00775" name="l00775"></a><span class="lineno">  775</span> </div>
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno">  776</span> </div>
<div class="line"><a id="l00777" name="l00777"></a><span class="lineno">  777</span> </div>
<div class="line"><a id="l00778" name="l00778"></a><span class="lineno">  778</span> </div>
<div class="line"><a id="l00779" name="l00779"></a><span class="lineno">  779</span> </div>
<div class="ttc" id="aclassfabgl_1_1_base_display_controller_a5308b6853d3778845649f08832e96535_html_a5308b6853d3778845649f08832e96535"><div class="ttname"><a href="classfabgl_1_1_base_display_controller_a5308b6853d3778845649f08832e96535.html#a5308b6853d3778845649f08832e96535">fabgl::BaseDisplayController::getViewPortHeight</a></div><div class="ttdeci">int getViewPortHeight()</div><div class="ttdoc">Determines vertical size of the viewport.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00710">displaycontroller.h:710</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_base_display_controller_a69dd55b31e9c284aeec6f2b91a8da525_html_a69dd55b31e9c284aeec6f2b91a8da525"><div class="ttname"><a href="classfabgl_1_1_base_display_controller_a69dd55b31e9c284aeec6f2b91a8da525.html#a69dd55b31e9c284aeec6f2b91a8da525">fabgl::BaseDisplayController::getViewPortWidth</a></div><div class="ttdeci">int getViewPortWidth()</div><div class="ttdoc">Determines horizontal size of the viewport.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00703">displaycontroller.h:703</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_bitmapped_display_controller_html"><div class="ttname"><a href="classfabgl_1_1_bitmapped_display_controller.html">fabgl::BitmappedDisplayController</a></div><div class="ttdoc">Represents the base abstract class for bitmapped display controllers.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00751">displaycontroller.h:751</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a02a657b4391aa25216ff993a0569a3c5_html_a02a657b4391aa25216ff993a0569a3c5"><div class="ttname"><a href="classfabgl_1_1_canvas_a02a657b4391aa25216ff993a0569a3c5.html#a02a657b4391aa25216ff993a0569a3c5">fabgl::Canvas::fillRectangle</a></div><div class="ttdeci">void fillRectangle(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Fills a rectangle using the current brush color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00278">canvas.cpp:278</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a07efb2a4e9a982688c8bb3c3f21d1092_html_a07efb2a4e9a982688c8bb3c3f21d1092"><div class="ttname"><a href="classfabgl_1_1_canvas_a07efb2a4e9a982688c8bb3c3f21d1092.html#a07efb2a4e9a982688c8bb3c3f21d1092">fabgl::Canvas::getHeight</a></div><div class="ttdeci">int getHeight()</div><div class="ttdoc">Determines the canvas height in pixels.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8h_source.html#l00092">canvas.h:92</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a0b366edca7302c95aa628529545453ea_html_a0b366edca7302c95aa628529545453ea"><div class="ttname"><a href="classfabgl_1_1_canvas_a0b366edca7302c95aa628529545453ea.html#a0b366edca7302c95aa628529545453ea">fabgl::Canvas::waitCompletion</a></div><div class="ttdeci">void waitCompletion(bool waitVSync=true)</div><div class="ttdoc">Waits for drawing queue to become empty.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00084">canvas.cpp:84</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a0c8606755ffb5321f7bfc7e5867d605f_html_a0c8606755ffb5321f7bfc7e5867d605f"><div class="ttname"><a href="classfabgl_1_1_canvas_a0c8606755ffb5321f7bfc7e5867d605f.html#a0c8606755ffb5321f7bfc7e5867d605f">fabgl::Canvas::setScrollingRegion</a></div><div class="ttdeci">void setScrollingRegion(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Defines the scrolling region.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00145">canvas.cpp:145</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a160b74fb568b7c9ee88db25098f7442d_html_a160b74fb568b7c9ee88db25098f7442d"><div class="ttname"><a href="classfabgl_1_1_canvas_a160b74fb568b7c9ee88db25098f7442d.html#a160b74fb568b7c9ee88db25098f7442d">fabgl::Canvas::drawTextWithEllipsis</a></div><div class="ttdeci">void drawTextWithEllipsis(FontInfo const *fontInfo, int X, int Y, char const *text, int maxX)</div><div class="ttdoc">Draws a string at specified position. Add ellipses before truncation.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00430">canvas.cpp:430</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a213a1f95153dba2e00962ff0ca27aaf3_html_a213a1f95153dba2e00962ff0ca27aaf3"><div class="ttname"><a href="classfabgl_1_1_canvas_a213a1f95153dba2e00962ff0ca27aaf3.html#a213a1f95153dba2e00962ff0ca27aaf3">fabgl::Canvas::swapRectangle</a></div><div class="ttdeci">void swapRectangle(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Swaps pen and brush colors of the specified rectangle.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00311">canvas.cpp:311</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a2feb78875ca185cbdfd65987f380ef15_html_a2feb78875ca185cbdfd65987f380ef15"><div class="ttname"><a href="classfabgl_1_1_canvas_a2feb78875ca185cbdfd65987f380ef15.html#a2feb78875ca185cbdfd65987f380ef15">fabgl::Canvas::copyRect</a></div><div class="ttdeci">void copyRect(int sourceX, int sourceY, int destX, int destY, int width, int height)</div><div class="ttdoc">Copies a screen rectangle to the specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00490">canvas.cpp:490</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a3192f783a37fbc936429e81e829ac61e_html_a3192f783a37fbc936429e81e829ac61e"><div class="ttname"><a href="classfabgl_1_1_canvas_a3192f783a37fbc936429e81e829ac61e.html#a3192f783a37fbc936429e81e829ac61e">fabgl::Canvas::setPixel</a></div><div class="ttdeci">void setPixel(int X, int Y)</div><div class="ttdoc">Fills a single pixel with the pen color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00154">canvas.cpp:154</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a31a9db7752f187501af260615027c5bd_html_a31a9db7752f187501af260615027c5bd"><div class="ttname"><a href="classfabgl_1_1_canvas_a31a9db7752f187501af260615027c5bd.html#a31a9db7752f187501af260615027c5bd">fabgl::Canvas::swapBuffers</a></div><div class="ttdeci">void swapBuffers()</div><div class="ttdoc">Swaps screen buffer when double buffering is enabled.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00511">canvas.cpp:511</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a3447e9b59b69ead99cf3735e1bd18c02_html_a3447e9b59b69ead99cf3735e1bd18c02"><div class="ttname"><a href="classfabgl_1_1_canvas_a3447e9b59b69ead99cf3735e1bd18c02.html#a3447e9b59b69ead99cf3735e1bd18c02">fabgl::Canvas::drawBitmap</a></div><div class="ttdeci">void drawBitmap(int X, int Y, Bitmap const *bitmap)</div><div class="ttdoc">Draws a bitmap at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00502">canvas.cpp:502</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a37ccab1d5906bc2facb56457e89ee0bc_html_a37ccab1d5906bc2facb56457e89ee0bc"><div class="ttname"><a href="classfabgl_1_1_canvas_a37ccab1d5906bc2facb56457e89ee0bc.html#a37ccab1d5906bc2facb56457e89ee0bc">fabgl::Canvas::drawEllipse</a></div><div class="ttdeci">void drawEllipse(int X, int Y, int width, int height)</div><div class="ttdoc">Draws an ellipse specifying center and size, using current pen color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00330">canvas.cpp:330</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a3baa6299618be4d828b473893b50a9f1_html_a3baa6299618be4d828b473893b50a9f1"><div class="ttname"><a href="classfabgl_1_1_canvas_a3baa6299618be4d828b473893b50a9f1.html#a3baa6299618be4d828b473893b50a9f1">fabgl::Canvas::setPaintOptions</a></div><div class="ttdeci">void setPaintOptions(PaintOptions options)</div><div class="ttdoc">Sets paint options.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00374">canvas.cpp:374</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a3ec8e84f102c8ca95207a531d803b945_html_a3ec8e84f102c8ca95207a531d803b945"><div class="ttname"><a href="classfabgl_1_1_canvas_a3ec8e84f102c8ca95207a531d803b945.html#a3ec8e84f102c8ca95207a531d803b945">fabgl::Canvas::setOrigin</a></div><div class="ttdeci">void setOrigin(int X, int Y)</div><div class="ttdoc">Sets the axes origin.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00052">canvas.cpp:52</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a4163959b5395aa1394961e619bea51e4_html_a4163959b5395aa1394961e619bea51e4"><div class="ttname"><a href="classfabgl_1_1_canvas_a4163959b5395aa1394961e619bea51e4.html#a4163959b5395aa1394961e619bea51e4">fabgl::Canvas::setClippingRect</a></div><div class="ttdeci">void setClippingRect(Rect const &amp;rect)</div><div class="ttdoc">Sets clipping rectangle relative to the origin.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00067">canvas.cpp:67</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a43079b89e73581496cdf7623d1fb48c2_html_a43079b89e73581496cdf7623d1fb48c2"><div class="ttname"><a href="classfabgl_1_1_canvas_a43079b89e73581496cdf7623d1fb48c2.html#a43079b89e73581496cdf7623d1fb48c2">fabgl::Canvas::setPenWidth</a></div><div class="ttdeci">void setPenWidth(int value)</div><div class="ttdoc">Sets pen width for lines, rectangles and paths.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00220">canvas.cpp:220</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a51745433bb792141ee5e66e9ff5a87e9_html_a51745433bb792141ee5e66e9ff5a87e9"><div class="ttname"><a href="classfabgl_1_1_canvas_a51745433bb792141ee5e66e9ff5a87e9.html#a51745433bb792141ee5e66e9ff5a87e9">fabgl::Canvas::drawRectangle</a></div><div class="ttdeci">void drawRectangle(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Draws a rectangle using the current pen color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00263">canvas.cpp:263</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a52cf5628da66f95d0ef2448bdfedf259_html_a52cf5628da66f95d0ef2448bdfedf259"><div class="ttname"><a href="classfabgl_1_1_canvas_a52cf5628da66f95d0ef2448bdfedf259.html#a52cf5628da66f95d0ef2448bdfedf259">fabgl::Canvas::drawGlyph</a></div><div class="ttdeci">void drawGlyph(int X, int Y, int width, int height, uint8_t const *data, int index=0)</div><div class="ttdoc">Draws a glyph at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00340">canvas.cpp:340</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a5b076ed14a6564a14dbd347cfce3a4e7_html_a5b076ed14a6564a14dbd347cfce3a4e7"><div class="ttname"><a href="classfabgl_1_1_canvas_a5b076ed14a6564a14dbd347cfce3a4e7.html#a5b076ed14a6564a14dbd347cfce3a4e7">fabgl::Canvas::getClippingRect</a></div><div class="ttdeci">Rect getClippingRect()</div><div class="ttdoc">Gets last clipping rectangle set using setClippingRect().</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00076">canvas.cpp:76</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a67a0997183f24da19b776d96c1052998_html_a67a0997183f24da19b776d96c1052998"><div class="ttname"><a href="classfabgl_1_1_canvas_a67a0997183f24da19b776d96c1052998.html#a67a0997183f24da19b776d96c1052998">fabgl::Canvas::getWidth</a></div><div class="ttdeci">int getWidth()</div><div class="ttdoc">Determines the canvas width in pixels.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8h_source.html#l00083">canvas.h:83</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a7a927cc681ff0c452115e08196dd17c5_html_a7a927cc681ff0c452115e08196dd17c5"><div class="ttname"><a href="classfabgl_1_1_canvas_a7a927cc681ff0c452115e08196dd17c5.html#a7a927cc681ff0c452115e08196dd17c5">fabgl::Canvas::drawPath</a></div><div class="ttdeci">void drawPath(Point const *points, int pointsCount)</div><div class="ttdoc">Draws a sequence of lines.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00521">canvas.cpp:521</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a8180e12aa8ac1265fa642959d1e4ffd2_html_a8180e12aa8ac1265fa642959d1e4ffd2"><div class="ttname"><a href="classfabgl_1_1_canvas_a8180e12aa8ac1265fa642959d1e4ffd2.html#a8180e12aa8ac1265fa642959d1e4ffd2">fabgl::Canvas::fillEllipse</a></div><div class="ttdeci">void fillEllipse(int X, int Y, int width, int height)</div><div class="ttdoc">Fills an ellipse specifying center and size, using current brush color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00320">canvas.cpp:320</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a833ec1b3a2cf47aa9fbf862b2136f2a2_html_a833ec1b3a2cf47aa9fbf862b2136f2a2"><div class="ttname"><a href="classfabgl_1_1_canvas_a833ec1b3a2cf47aa9fbf862b2136f2a2.html#a833ec1b3a2cf47aa9fbf862b2136f2a2">fabgl::Canvas::setBrushColor</a></div><div class="ttdeci">void setBrushColor(uint8_t red, uint8_t green, uint8_t blue)</div><div class="ttdoc">Sets brush (background) color specifying color components.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00214">canvas.cpp:214</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a96a5b38870af14b17892861338f5d069_html_a96a5b38870af14b17892861338f5d069"><div class="ttname"><a href="classfabgl_1_1_canvas_a96a5b38870af14b17892861338f5d069.html#a96a5b38870af14b17892861338f5d069">fabgl::Canvas::getOrigin</a></div><div class="ttdeci">Point getOrigin()</div><div class="ttdoc">Gets last origin set using setOrigin().</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8h_source.html#l00146">canvas.h:146</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_a982dd49e90e0e7ac03bc9358d0ebf589_html_a982dd49e90e0e7ac03bc9358d0ebf589"><div class="ttname"><a href="classfabgl_1_1_canvas_a982dd49e90e0e7ac03bc9358d0ebf589.html#a982dd49e90e0e7ac03bc9358d0ebf589">fabgl::Canvas::textExtent</a></div><div class="ttdeci">int textExtent(FontInfo const *fontInfo, char const *text)</div><div class="ttdoc">Calculates text extension in pixels.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00453">canvas.cpp:453</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_aa3c3450751dc207a03b0f7f7704964ce_html_aa3c3450751dc207a03b0f7f7704964ce"><div class="ttname"><a href="classfabgl_1_1_canvas_aa3c3450751dc207a03b0f7f7704964ce.html#aa3c3450751dc207a03b0f7f7704964ce">fabgl::Canvas::invertRectangle</a></div><div class="ttdeci">void invertRectangle(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Inverts a rectangle.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00296">canvas.cpp:296</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_aa74ddfd1e6c73270086397d907057be3_html_aa74ddfd1e6c73270086397d907057be3"><div class="ttname"><a href="classfabgl_1_1_canvas_aa74ddfd1e6c73270086397d907057be3.html#aa74ddfd1e6c73270086397d907057be3">fabgl::Canvas::getPixel</a></div><div class="ttdeci">RGB888 getPixel(int X, int Y)</div><div class="ttdoc">Reads the pixel at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00543">canvas.cpp:543</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ab2ef33259e2223e00963fa402c02b064_html_ab2ef33259e2223e00963fa402c02b064"><div class="ttname"><a href="classfabgl_1_1_canvas_ab2ef33259e2223e00963fa402c02b064.html#ab2ef33259e2223e00963fa402c02b064">fabgl::Canvas::drawLine</a></div><div class="ttdeci">void drawLine(int X1, int Y1, int X2, int Y2)</div><div class="ttdoc">Draws a line specifying initial and ending coordinates.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00256">canvas.cpp:256</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ac130486f79bd6cefa1bd8f33c5e5cbed_html_ac130486f79bd6cefa1bd8f33c5e5cbed"><div class="ttname"><a href="classfabgl_1_1_canvas_ac130486f79bd6cefa1bd8f33c5e5cbed.html#ac130486f79bd6cefa1bd8f33c5e5cbed">fabgl::Canvas::setPenColor</a></div><div class="ttdeci">void setPenColor(uint8_t red, uint8_t green, uint8_t blue)</div><div class="ttdoc">Sets pen (foreground) color specifying color components.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00193">canvas.cpp:193</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ac8bb3912a3ce86b15842e79d0b421204_html_ac8bb3912a3ce86b15842e79d0b421204"><div class="ttname"><a href="classfabgl_1_1_canvas_ac8bb3912a3ce86b15842e79d0b421204.html#ac8bb3912a3ce86b15842e79d0b421204">fabgl::Canvas::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Fills the entire canvas with the brush color.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00109">canvas.cpp:109</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_acabff55d9d5166f90791a200ca929a1c_html_acabff55d9d5166f90791a200ca929a1c"><div class="ttname"><a href="classfabgl_1_1_canvas_acabff55d9d5166f90791a200ca929a1c.html#acabff55d9d5166f90791a200ca929a1c">fabgl::Canvas::resetPaintOptions</a></div><div class="ttdeci">void resetPaintOptions()</div><div class="ttdoc">Resets paint options.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00383">canvas.cpp:383</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ace0e4720eb75f05b029c455982653ed2_html_ace0e4720eb75f05b029c455982653ed2"><div class="ttname"><a href="classfabgl_1_1_canvas_ace0e4720eb75f05b029c455982653ed2.html#ace0e4720eb75f05b029c455982653ed2">fabgl::Canvas::drawChar</a></div><div class="ttdeci">void drawChar(int X, int Y, char c)</div><div class="ttdoc">Draws a character at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00395">canvas.cpp:395</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ad20897c5c8bd47f5d4005989bead0e55_html_ad20897c5c8bd47f5d4005989bead0e55"><div class="ttname"><a href="classfabgl_1_1_canvas_ad20897c5c8bd47f5d4005989bead0e55.html#ad20897c5c8bd47f5d4005989bead0e55">fabgl::Canvas::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdoc">Resets paint state and other display controller settings.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00118">canvas.cpp:118</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ad20d1b20527338e032925d68bda2d517_html_ad20d1b20527338e032925d68bda2d517"><div class="ttname"><a href="classfabgl_1_1_canvas_ad20d1b20527338e032925d68bda2d517.html#ad20d1b20527338e032925d68bda2d517">fabgl::Canvas::resetGlyphOptions</a></div><div class="ttdeci">void resetGlyphOptions()</div><div class="ttdoc">Resets glyph options.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00368">canvas.cpp:368</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ad3509f1cdf9c5ad19bcea7d66d1f0ad8_html_ad3509f1cdf9c5ad19bcea7d66d1f0ad8"><div class="ttname"><a href="classfabgl_1_1_canvas_ad3509f1cdf9c5ad19bcea7d66d1f0ad8.html#ad3509f1cdf9c5ad19bcea7d66d1f0ad8">fabgl::Canvas::getFontInfo</a></div><div class="ttdeci">FontInfo const * getFontInfo()</div><div class="ttdoc">Gets info about currently selected font.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8h_source.html#l00583">canvas.h:583</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ad38389073d9198667e74e79bb7f6dba3_html_ad38389073d9198667e74e79bb7f6dba3"><div class="ttname"><a href="classfabgl_1_1_canvas_ad38389073d9198667e74e79bb7f6dba3.html#ad38389073d9198667e74e79bb7f6dba3">fabgl::Canvas::drawText</a></div><div class="ttdeci">void drawText(int X, int Y, char const *text, bool wrap=false)</div><div class="ttdoc">Draws a string at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00401">canvas.cpp:401</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_adac3e826c16a5abcc9a878b89afb8d86_html_adac3e826c16a5abcc9a878b89afb8d86"><div class="ttname"><a href="classfabgl_1_1_canvas_adac3e826c16a5abcc9a878b89afb8d86.html#adac3e826c16a5abcc9a878b89afb8d86">fabgl::Canvas::drawTextFmt</a></div><div class="ttdeci">void drawTextFmt(int X, int Y, const char *format,...)</div><div class="ttdoc">Draws formatted text at specified position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00474">canvas.cpp:474</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_adda0fd465e10de29bbb2a9268999b75c_html_adda0fd465e10de29bbb2a9268999b75c"><div class="ttname"><a href="classfabgl_1_1_canvas_adda0fd465e10de29bbb2a9268999b75c.html#adda0fd465e10de29bbb2a9268999b75c">fabgl::Canvas::lineTo</a></div><div class="ttdeci">void lineTo(int X, int Y)</div><div class="ttdoc">Draws a line starting from current pen position.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00247">canvas.cpp:247</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ade8b482e1c154cafa15e6cce34cf4bd7_html_ade8b482e1c154cafa15e6cce34cf4bd7"><div class="ttname"><a href="classfabgl_1_1_canvas_ade8b482e1c154cafa15e6cce34cf4bd7.html#ade8b482e1c154cafa15e6cce34cf4bd7">fabgl::Canvas::moveTo</a></div><div class="ttdeci">void moveTo(int X, int Y)</div><div class="ttdoc">Moves current pen position to the spcified coordinates.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00178">canvas.cpp:178</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_adf5beb564841faac78a85c72ba79d845_html_adf5beb564841faac78a85c72ba79d845"><div class="ttname"><a href="classfabgl_1_1_canvas_adf5beb564841faac78a85c72ba79d845.html#adf5beb564841faac78a85c72ba79d845">fabgl::Canvas::scroll</a></div><div class="ttdeci">void scroll(int offsetX, int offsetY)</div><div class="ttdoc">Scrolls pixels horizontally and/or vertically.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00129">canvas.cpp:129</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_adfb8897a6be8008318aa02ab10f407f5_html_adfb8897a6be8008318aa02ab10f407f5"><div class="ttname"><a href="classfabgl_1_1_canvas_adfb8897a6be8008318aa02ab10f407f5.html#adfb8897a6be8008318aa02ab10f407f5">fabgl::Canvas::setGlyphOptions</a></div><div class="ttdeci">void setGlyphOptions(GlyphOptions options)</div><div class="ttdoc">Sets drawing options for the next glyphs.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00358">canvas.cpp:358</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_ae75638d96ce77bea32eb76333b76cbc5_html_ae75638d96ce77bea32eb76333b76cbc5"><div class="ttname"><a href="classfabgl_1_1_canvas_ae75638d96ce77bea32eb76333b76cbc5.html#ae75638d96ce77bea32eb76333b76cbc5">fabgl::Canvas::endUpdate</a></div><div class="ttdeci">void endUpdate()</div><div class="ttdoc">Resumes drawings after beginUpdate().</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00103">canvas.cpp:103</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_aed37132c2af1db5b21e26ed664d0c758_html_aed37132c2af1db5b21e26ed664d0c758"><div class="ttname"><a href="classfabgl_1_1_canvas_aed37132c2af1db5b21e26ed664d0c758.html#aed37132c2af1db5b21e26ed664d0c758">fabgl::Canvas::selectFont</a></div><div class="ttdeci">void selectFont(FontInfo const *fontInfo)</div><div class="ttdoc">Selects a font to use for the next text drawings.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00389">canvas.cpp:389</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_af4ac807c623677aa49e67f413e1e6e23_html_af4ac807c623677aa49e67f413e1e6e23"><div class="ttname"><a href="classfabgl_1_1_canvas_af4ac807c623677aa49e67f413e1e6e23.html#af4ac807c623677aa49e67f413e1e6e23">fabgl::Canvas::fillPath</a></div><div class="ttdeci">void fillPath(Point const *points, int pointsCount)</div><div class="ttdoc">Fills the polygon enclosed in a sequence of lines.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00532">canvas.cpp:532</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_af9e6a083d810f5ac805cd6ae8e077756_html_af9e6a083d810f5ac805cd6ae8e077756"><div class="ttname"><a href="classfabgl_1_1_canvas_af9e6a083d810f5ac805cd6ae8e077756.html#af9e6a083d810f5ac805cd6ae8e077756">fabgl::Canvas::setLineEnds</a></div><div class="ttdeci">void setLineEnds(LineEnds value)</div><div class="ttdoc">Sets line ends shape.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00229">canvas.cpp:229</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_afb0580e2870f3afd9ae1b1300b1c8e9a_html_afb0580e2870f3afd9ae1b1300b1c8e9a"><div class="ttname"><a href="classfabgl_1_1_canvas_afb0580e2870f3afd9ae1b1300b1c8e9a.html#afb0580e2870f3afd9ae1b1300b1c8e9a">fabgl::Canvas::beginUpdate</a></div><div class="ttdeci">void beginUpdate()</div><div class="ttdoc">Suspends drawings.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8cpp_source.html#l00097">canvas.cpp:97</a></div></div>
<div class="ttc" id="aclassfabgl_1_1_canvas_html"><div class="ttname"><a href="classfabgl_1_1_canvas.html">fabgl::Canvas</a></div><div class="ttdoc">A class with a set of drawing methods.</div><div class="ttdef"><b>Definition:</b> <a href="canvas_8h_source.html#l00070">canvas.h:70</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4_html_a2474a5474cbff19523a51eb1de01cda4"><div class="ttname"><a href="displaycontroller_8h_a2474a5474cbff19523a51eb1de01cda4.html#a2474a5474cbff19523a51eb1de01cda4">width</a></div><div class="ttdeci">uint8_t width</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00002">displaycontroller.h:2</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_a96db82e580e46e24e2b39dd6c5bf7c21_html_a96db82e580e46e24e2b39dd6c5bf7c21"><div class="ttname"><a href="displaycontroller_8h_a96db82e580e46e24e2b39dd6c5bf7c21.html#a96db82e580e46e24e2b39dd6c5bf7c21">data</a></div><div class="ttdeci">uint8_t const  * data</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00004">displaycontroller.h:4</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57_html_aa6aba27bc1a89db9e350b50bbf881f57"><div class="ttname"><a href="displaycontroller_8h_aa6aba27bc1a89db9e350b50bbf881f57.html#aa6aba27bc1a89db9e350b50bbf881f57">X</a></div><div class="ttdeci">int16_t X</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00000">displaycontroller.h:0</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_abe4637362df8e341470401813999dd17_html_abe4637362df8e341470401813999dd17"><div class="ttname"><a href="displaycontroller_8h_abe4637362df8e341470401813999dd17.html#abe4637362df8e341470401813999dd17">Y</a></div><div class="ttdeci">int16_t Y</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00001">displaycontroller.h:1</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534_html_ad12fc34ce789bce6c8a05d8a17138534"><div class="ttname"><a href="displaycontroller_8h_ad12fc34ce789bce6c8a05d8a17138534.html#ad12fc34ce789bce6c8a05d8a17138534">height</a></div><div class="ttdeci">uint8_t height</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00003">displaycontroller.h:3</a></div></div>
<div class="ttc" id="adisplaycontroller_8h_html"><div class="ttname"><a href="displaycontroller_8h.html">displaycontroller.h</a></div><div class="ttdoc">This file contains fabgl::BitmappedDisplayController definition.</div></div>
<div class="ttc" id="afabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed_html_a0dd601bb81c34d0e0e1c71e445d8c9ed"><div class="ttname"><a href="fabutils_8h_a0dd601bb81c34d0e0e1c71e445d8c9ed.html#a0dd601bb81c34d0e0e1c71e445d8c9ed">X1</a></div><div class="ttdeci">int16_t X1</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00000">fabutils.h:0</a></div></div>
<div class="ttc" id="afabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07_html_a3e43b2629ffdaba77fe72f8f70818f07"><div class="ttname"><a href="fabutils_8h_a3e43b2629ffdaba77fe72f8f70818f07.html#a3e43b2629ffdaba77fe72f8f70818f07">Y2</a></div><div class="ttdeci">int16_t Y2</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00003">fabutils.h:3</a></div></div>
<div class="ttc" id="afabutils_8h_aacc253365e856de8781b525223af3c52_html_aacc253365e856de8781b525223af3c52"><div class="ttname"><a href="fabutils_8h_aacc253365e856de8781b525223af3c52.html#aacc253365e856de8781b525223af3c52">X2</a></div><div class="ttdeci">int16_t X2</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00002">fabutils.h:2</a></div></div>
<div class="ttc" id="afabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266_html_aefe36b84395404eaeb2fb7bc8dfa9266"><div class="ttname"><a href="fabutils_8h_aefe36b84395404eaeb2fb7bc8dfa9266.html#aefe36b84395404eaeb2fb7bc8dfa9266">Y1</a></div><div class="ttdeci">int16_t Y1</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00001">fabutils.h:1</a></div></div>
<div class="ttc" id="agroup___enumerations_ga8ac9813c9c9df8a1e7f6ec66b346f08e_html_ga8ac9813c9c9df8a1e7f6ec66b346f08e"><div class="ttname"><a href="group___enumerations_ga8ac9813c9c9df8a1e7f6ec66b346f08e.html#ga8ac9813c9c9df8a1e7f6ec66b346f08e">fabgl::LineEnds</a></div><div class="ttdeci">LineEnds</div><div class="ttdoc">This enum defines line ends when pen width is greater than 1.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00456">displaycontroller.h:456</a></div></div>
<div class="ttc" id="agroup___enumerations_gab87bacfdad76e61b9412d7124be44c1c_html_gab87bacfdad76e61b9412d7124be44c1c"><div class="ttname"><a href="group___enumerations_gab87bacfdad76e61b9412d7124be44c1c.html#gab87bacfdad76e61b9412d7124be44c1c">fabgl::Color</a></div><div class="ttdeci">Color</div><div class="ttdoc">This enum defines named colors.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00202">displaycontroller.h:202</a></div></div>
<div class="ttc" id="astructfabgl_1_1_bitmap_html"><div class="ttname"><a href="structfabgl_1_1_bitmap.html">fabgl::Bitmap</a></div><div class="ttdoc">Represents an image.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00465">displaycontroller.h:465</a></div></div>
<div class="ttc" id="astructfabgl_1_1_paint_options_html"><div class="ttname"><a href="structfabgl_1_1_paint_options.html">fabgl::PaintOptions</a></div><div class="ttdoc">Specifies general paint options.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00594">displaycontroller.h:594</a></div></div>
<div class="ttc" id="astructfabgl_1_1_point_html"><div class="ttname"><a href="structfabgl_1_1_point.html">fabgl::Point</a></div><div class="ttdoc">Represents the coordinate of a point.</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00239">fabutils.h:239</a></div></div>
<div class="ttc" id="astructfabgl_1_1_r_g_b888_html"><div class="ttname"><a href="structfabgl_1_1_r_g_b888.html">fabgl::RGB888</a></div><div class="ttdoc">Represents a 24 bit RGB color.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00228">displaycontroller.h:228</a></div></div>
<div class="ttc" id="astructfabgl_1_1_rect_html"><div class="ttname"><a href="structfabgl_1_1_rect.html">fabgl::Rect</a></div><div class="ttdoc">Represents a rectangle.</div><div class="ttdef"><b>Definition:</b> <a href="fabutils_8h_source.html#l00274">fabutils.h:274</a></div></div>
<div class="ttc" id="aunionfabgl_1_1_glyph_options_html"><div class="ttname"><a href="unionfabgl_1_1_glyph_options.html">fabgl::GlyphOptions</a></div><div class="ttdoc">Specifies various glyph painting options.</div><div class="ttdef"><b>Definition:</b> <a href="displaycontroller_8h_source.html#l00343">displaycontroller.h:343</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="canvas_8h.html">canvas.h</a></li>
    <li class="footer">Generated on Mon Aug 29 2022 13:52:04 for FabGL by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
  </ul>
</div>
</body>
</html>
